home *** CD-ROM | disk | FTP | other *** search
/ Aminet 40 / Aminet 40 (2000)(Schatztruhe)[!][Dec 2000].iso / Aminet / comm / tcp / Clarissa_HTTPd.lha / Clarissa-HTTPd / HTML / cgi-bin / gast.cgi < prev    next >
Encoding:
Text File  |  2000-10-23  |  3.7 KB  |  107 lines

  1. /* #! sys:rexxc/rx  */
  2. /* $VER: gast.cgi 1.0 (28.08.00) */
  3. /* Gästebuch-Script für clarissahttpd */
  4. /* © Martin Kayser */
  5.  
  6. /********************** Konfiguration *************/
  7. hintergrundbild=''                   /** relativer HTML-Pfad zum Script **/
  8. hgfarbe='#5c3317'                    /** in typischer HTML-Notierung **/
  9. txtfarbe='#ffbb00'                   /** in typischer HTML-Notierung **/
  10. linkfarbe='#dddd00'                  /** Farbe für Links **/
  11. vlinkfarbe='#aaaa00'                 /** Farbe für bereits besuchte Links **/
  12. datafile='clarissa-httpd:html/gast/gast.data' /** CLI/Shell-Pfad der Datei in welche
  13.                                         ** die GB-Einträge geschrieben werden
  14.                                         ** sollen. Die Datei muß!!! existieren
  15.                                         ** kann allerdings 0 Byte groß sein!**/
  16. hr='<IMG SRC=/gast/ruler.gif WIDTH=554 HEIGHT=5 ALT="---------------"><BR>'
  17.                                      /** HTML-Befehl für eine Trennlinie **/
  18. owner='Clarissa-HTTPd'               /** Hier wird eingetragen, wem das Gästebuch gehört! ;-) **/
  19. gbread='/gast/index.shtml' /** HTML-Pfad der Datei, auf welche der Link Gästebuch
  20.                             ** lesen verweisen soll. (realtive Pfadangabe zum Script) **/
  21. /*************************************************/
  22.  
  23. say 'Content-type: text/html'
  24. say ''
  25. parse arg args
  26. args = translate(args,' ','+')
  27. args = hex2str(args)
  28.  
  29. say '<html><head><title>' owner'´s Gästebuch</title></head>'
  30. say '<body bgcolor="'hgfarbe'" text="'txtfarbe'" background="'hintergrundbild'" link="'linkfarbe'" vlink="'vlinkfarbe'">'
  31.  
  32. parse var args 'name='name'&email='email'&hp='hp'&hptitel='hptitel'&kommentar='kommentar
  33. if kommentar='' then call leerkommentar(gbread,hr)
  34. kommentar = zeilenumbruch(kommentar)
  35. if name='' then name='Unbekannt'
  36. if hptitel='' then hptitel='Homepage'
  37. if hp = '' then hp = 'http://'
  38.  
  39. if exists(datafile) then do
  40.   dummy.0=7
  41.   dummy.1=hr
  42.   if email='' then dummy.2='<BR>'name
  43.   else dummy.2 ='<BR>'name' <a href=mailto:'email'>('email')</a>'
  44.   dummy.3 = 'schrieb am 'date()' um 'time()':<BR>'
  45.   if hp ~= 'http://' then dummy.4 = '<a href='hp' target="_blank">'hptitel'</a><BR><BR>'
  46.   else dummy.4 = ''
  47.   dummy.5 = '<I>'kommentar'</I>'
  48.   dummy.6 = '<BR>'
  49.   dummy.7 = '<BR>'d2c(10)||d2c(10)
  50.   call writelines(datafile,1,dummy,INSERT)
  51.   say '<h1 align=center> Vielen Dank 'name' für den Eintrag in das Gästebuch von 'owner'!</h1>'
  52.   say '<center>'
  53.   say hr
  54.   say '<BR><a href="'gbread'">Gästebuch lesen</A>'
  55.   say '<br><BR>'
  56.   say hr' 'copyright()
  57.   say '</center>'
  58.   say '</body></html>'
  59. end
  60. else do
  61.   say '<h1 align=center>'hr'Eintrag konnte nicht aufgenommen werden! :-('hr'</h1>'
  62.   say '<center>'
  63.   say 'Der Webmaster ('owner') hat wohl das Gästebuchscript falsch oder garnicht konfiguriert!'
  64.   say hr' 'copyright()
  65.   say '</center>'
  66.   say '</body></html>'
  67. end
  68. exit
  69.  
  70. /** ******************************************* **/
  71. /**              Prozeduren                     **/
  72. hex2str: procedure
  73.   parse arg a
  74.   b = '%'
  75.   d = index(a,b)
  76.   do while d ~= 0
  77.     a = insert(x2c(substr(a,d+1,2)),delstr(a,d,3),d-1)
  78.     d = index(a,b)
  79.   end
  80. return a
  81.  
  82. copyright: procedure
  83.  return '<BR><a href="mailto:tba@gmx.li">© 2000, Martin Kayser</A><BR>'
  84.  
  85. zeilenumbruch: procedure
  86.   parse arg a
  87.   b = d2c(13)
  88.   d = index(a,b)
  89.   do while d ~= 0
  90.     a = insert('<BR>',delstr(a,d,1),d-1)
  91.     d = index(a,b)
  92.   end
  93. return a
  94.  
  95. leerkommentar:
  96.   parse arg gbread,hr
  97.   say '<h1 align=center>'hr
  98.   say '<BR>Eintrag wurde nicht aufgenommen! :-(<BR><BR>'
  99.   say hr'</h1>'
  100.   say '<center>'
  101.   say '<BR>Grund: In das Kommentarfeld wurde nix eingetragen!<BR><BR>'
  102.   say '<a href="'gbread'">Gästebuch lesen</A><BR><BR>'
  103.   say hr' 'copyright()
  104.   say '</center>'
  105.   say '</body></html>'
  106. exit
  107.